草庐IT

c++ - 写很多类型别名是不好的做法吗?

全部标签

javascript - 如何将字符串数组转换为 typescript 类型?

我有这个数组:constarr=["foo","bar","loo"]我需要将它转换为typescript类型typearrTyp="foo"|"bar"|"loo";我如何在typescript中做到这一点? 最佳答案 为3.4及更高版本编辑:在3.4constassertions添加了,所以我们可以使用asconst得到一个字符串字面量类型的元组:constarr=["foo","bar","loo"]asconsttypearrTyp=typeofarr[number];//"foo"|"bar"|"loo"原创问题是arr没

javascript - 告诉我的库函数的用户传递的变量类型不正确的最佳方法是什么

我目前正在创建一个javascript函数库。主要供我自己使用,但您永远无法确定其他人是否最终会在他们的项目中使用它,我至少在创建它时就好像那会发生一样。大多数方法只有在传递的变量具有正确的数据类型时才有效。现在我的问题是:提醒用户变量类型不正确的最佳方式是什么?应该抛出这样的错误吗?functionfoo(thisShouldBeAString){//justpretendthatthisisamethodandnotaglobalfunctionif(typeof(thisShouldBeAString)==='string'){throw('foo(var),varshouldb

javascript - 我们如何设置本地文件的内容类型 header ?

我们如何为不是由服务器提供的页面设置内容类型header?(即保存到桌面的简单本地文件)假设我有一个.xml文件,我想在google-chrome中将其打开为application/xml。我该如何指定它?现在我想用google-chrome打开text/xml下的同一个文件,这是一个选项吗?我的文件: 最佳答案 header仅发送到服务器并由服务器提供服务。没有服务器,就没有请求或响应之类的东西,因此也就没有要接收的内容类型header。如果您试图将其保存在本地,您可以在本地主机服务器设置上打开它。IIS和Apache(以及许多其

javascript - Javascript 中的构造函数属性是否有好的用例?

首先,这个问题不是“constructor属性的作用是什么?”-关于它到底是什么以及它是如何工作的,有很多很好的文档:它是对创建对象的函数的引用(可能继承自其原型(prototype))。我更有兴趣了解此属性的常见用例。这在理论上似乎一切都很好,但是您什么时候真正需要对构造您的对象的函数的引用?一些想法是:也许我想克隆它。我可以再次调用构造函数并且获取我的对象的另一个实例。这当然不会奏效因为您可能会创建对象的实例原型(prototype),而不是对象本身;再加上一个更受欢迎的方法是创建一个新对象并设置该对象的原型(prototype)。也许你可以用它来弄清楚对象的“类型”是。这看起来很

javascript - Double not (!!) 与 JavaScript 中的类型强制

这个问题在这里已经有了答案:Whentousethedoublenot(!!)operatorinJavaScript(2个答案)关闭7年前。除了指示显式转换之外,在JavaScript中使用双非运算符是否有任何优势?如今,人们似乎经常喜欢使用双非来检查新API是否存在,但我从来没有读到它有任何好处。if(!!window.File)//TheFileAPIissupported.else//Yourbrowsersucks.我读到的一件事是,它是一种将类型强制转换为bool值的简洁、晦涩的方式,但是,当在此上下文中使用时,对象将自动强制转换为bool值,因为我们正在检查它是否是定义。

javascript - 输入类型复选框在 Bootstrap 模式中不起作用

为什么Bootstrap模式中的复选框不起作用?我使用这段代码使其工作但仍然有问题documentBody.on('click','.checkInp',null,function(e){varcheckbox=$(this).find(":checkbox"),checked=checkbox.is(":checked");checkbox.prop("checked",!checked);});documentBody.on('click','.checkInp:checkbox',null,function(e){$(this).parent('span').trigger('c

javascript - 未捕获的类型错误 : Cannot read property 'name' of undefined

单击“选择文件”时,我有以下代码:$(':file').change(function(){if(this.files.length==1){$('#selected_files').html("Attaching"+this.files.length+"file");}else{$('#selected_files').html("Attaching"+this.files.length+"files");}$('#selected_files').append("FilenameSize");for(x=0;x"+name+"("+filesize(size)+")"+type+"

javascript - 有没有一种好的方法可以缩短 Javascript 的 promise ?

我对promises/Deferreds有点陌生。对于成功和错误的情况,是否有一个好的模式来处理可能想要缩短promise链的情况?在错误情况下,我知道你可以将一个.then(null,function(error){})链接到最后并从之前的任何一个then中捕获错误,但是如果你想以更自定义的方式处理错误并终止?您是否会在较早的错误处理程序中指定错误的“类型”并通过新的promise返回它,以在最终的错误处理程序中处理或跳过?如果您想在链中更早地终止(仅有条件地触发任何稍后的then)的成功案例呢? 最佳答案 通常,promise链

javascript - 如何在javascript中对类型数组进行排序?

例如我输入了这样的数组:vara=newInt32Array([3,8,6,1,6,9]);当我尝试调用a.sort()时,它不起作用。排序类型数组的最佳方法是什么?性能怎么样,我们可以比常规数组更快地对类型化数组进行排序吗? 最佳答案 JavaScript数组方法的定义方式使其适用于任何类数组对象,而不仅仅是Array的实际实例。所以你可以使用:Array.prototype.sort.call(a,function(a,b){returna-b;});自定义回调是必要的,因为JS默认按字典顺序对值进行排序。另见Howtosort

javascript - 未捕获的类型错误 : Cannot use 'in' operator to search for '0' in (jQuery)

我觉得这与AJAX调用有关。不太确定发生了什么。从技术上讲,该错误是在定义isArraylike(obj)函数的第584行的jQuery文件中抛出的。jQuery(document).ready(function(){varwidth_of_grams=$(window).width();varnew_pic_height=(width_of_grams/7);$("img.gram_photo").css('height',(width_of_grams)/7);$("#instafeed").css('height',2*new_pic_height);$(window).resi